package com.example.mqactive.mytest.myspring.springboot.topic;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsMessagingTemplate;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import javax.jms.Queue;
import javax.jms.Topic;

/**
 * 消息生产者.
 * @author Angel --守护天使
 * @version v.0.1
 * @date 2016年8月23日
 */
@Component
@EnableScheduling
public class Producer2 {

    @Autowired
    private JmsMessagingTemplate jmsMessagingTemplate;

    @Autowired
    private Queue queue;

    @Autowired
    private Topic topic;

    @Scheduled(fixedDelay=30000)//每3s执行1次
    public void send() {
        this.jmsMessagingTemplate.convertAndSend(this.queue, "hi,activeMQ2");

        //spring boot的jms配置是queue的方式，所以我们需要进行指定为topic的方式。
        //spring.jms.pub-sub-domain=true

        //send topic.
        this.jmsMessagingTemplate.convertAndSend(this.topic, "hi,activeMQ2(topic)");
    }

}